/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package modelo;

import basedatos.EspecialidadBD;
import java.io.Serializable;
import java.util.List;
import javax.persistence.*;

/**
 *
 * @author caesar
 */
@Entity
@NamedQueries({
    @NamedQuery(name="Especialidad.updatexId",query="Update Especialidad e Set e.especialidad = :prmEspecialidad Where e.id = :id"),
    @NamedQuery(name="Especialidad.deletexId",query="Delete From Especialidad e Where e.id = :id"),
    @NamedQuery(name="Especialidad.selectxNom",query="Select e From Especialidad e Where e.especialidad =:espe")
})
public class Especialidad implements Serializable {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int id;
    private String especialidad;

    public int getId() {return id;}
    public void setId(int id) {this.id = id;}  
    public String getEspecialidad() {return especialidad;}
    public void setEspecialidad(String especialidad) {this.especialidad = especialidad;}
    //////////////////////
 public int insertEspecialidad(Especialidad esp) throws Exception
    {
        EspecialidadBD ebd = new EspecialidadBD();
        if(ebd.persistir(esp)==1)
        {
            return 1;
        }
        return 0;
    }
    
    public int updateEspecialidad1(int idesp) throws Exception
    {//19Jun no usado hasta el momento
        EspecialidadBD ebd = new EspecialidadBD();
        String cmdSql= "Especialidad.updatexId";
        if(ebd.updateRegistro1(cmdSql,idesp) ==1)
        {
            return 1;
        }
        return 0;
    }

    public int updateEspecialidad(Especialidad eEsp) throws Exception
    {   
        EspecialidadBD ebd = new EspecialidadBD();
        int ide = eEsp.getId();//kitar
        String espec = eEsp.getEspecialidad();//kitar
        ebd.updateRegistro(eEsp);
        return 1;
    }
    
    public int deleteEspecialidad(int idesp) throws Exception
    {
        EspecialidadBD ebd = new EspecialidadBD();
        String cmdSql= "Especialidad.deletexId";
        if(ebd.deleteRegistro(cmdSql,idesp) ==1)
        {
            return 1;
        }
        return 0;
    }
    
    public List<Especialidad> selectEspecialidades() throws Exception
    {
        EspecialidadBD ebd = new EspecialidadBD();
        List<Object> lsEsp = ebd.listar("Especialidad");
        List<Especialidad> esp = (List)lsEsp;
        return esp;  
    }
    public int validaUnicidad(String esp) throws Exception
    {
        EspecialidadBD ebd = new EspecialidadBD();
        String cmdSql = "Especialidad.selectxNom";
        return ebd.validaUnicidad(cmdSql, esp.trim().toUpperCase());
    }
}
